function checkLogic(g, e, b) {
    var f = questionMap[g];
    var d = new Array();
    var a = "";
    var c = "";
    a = ctx + "/json/logic/checkLogic";
    d = getList();
    if (f.showtype == "page") {
        c = "page";
    } else {
        c = "question"
    }
    ajaxPost(a, {
        surveyid: survey.id,
        qid: g,
        type: c,
        list: $.toJSON(d)
    },
    function(h) {
        if (h != null && h.error == "0") {
            if (typeof(e) == "function") {
                e.call(this)
            }
        } else {
            if (typeof(b) == "function") {
                b.call(this)
            }
        }
    })
}
function getList() {
    var b = new Array();
    var a = new Array();
    $("[id^=question_]").each(function(d) {
        var h = $(this).attr("id").split("_")[1];
        var g = questionMap[h];
        if (g.showtype == "page") {
            if (a.length > 0) {
                b.push(a);
                a = new Array()
            }
        } else {
            if (oldQuestionMap[h] == 1) {
                var f = {
                    id: h
                };
                if (g.type == 41 || g.type == 42) {
                    var c = new Array();
                    for (var e = 0; e < g.questions.length; e++) {
                        c.push(g.questions[e].id)
                    }
                    f.ids = c
                }
                a.push(f)
            }
        }
    });
    if (a.length > 0) {
        b.push(a)
    }
    return b
}

// 逻辑判断操作的影响
function checkBreakLogic(d, c, a) {
    var b = getBreakList(d); // d 问题主键； 获取
    ajaxPost(ctx + "/json/logic/checkBreakLogic", {
        surveyid: survey.id,
        list: $.toJSON(b)
    },
    function(g) {
        if (g != null && g.error == "0") { // 问题可以删除
            var e = questionMap[g.msg]; // 获取问题
            var f = $("#q_no_" + g.msg).html(); // 问题内容
            artconfirm(formatMessage("edit_016", f.substring(0, f.length - 1), f.substring(0, f.length - 1)), 
            function() {
                deleteQuestionActionHtml(d); // 删除问题内容
            },
            function() {
                $("#sortable").sortable("cancel"); // 重新处理排序
            },
            "确定", "取消")
        } else {
            if (typeof(a) == "function") { // 执行其他操作
                a.call(this)
            }
        }
    })
}

// 传入问题主键
function getBreakList(g) {
    var f = new Array();
    var c = new Array();
    var e = -1;
    $("[id^=question_]").each(function(h) {
        var j = $(this).attr("id").split("_")[1];
        if (j == g) { // 当前的问题
            e = h // 问题的序号
        }
        var i = questionMap[j]; // 取出问题
        if (i.showtype == "page") { // 页号
            c.push(h); // 收入分页
        }
    });
    var b = 0;
    var d = 0;
    if (c[0] == e) {
        b = 0
    } else {
        for (var a = 0; a < c.length; a++) {
            if (c[a] == e) {
                b = c[a - 1] + 1
            }
        }
    }
    if (c[c.length - 1] == e) {
        d = $("[id^=question_]").length - 1
    } else {
        for (var a = 0; a < c.length; a++) {
            if (c[a] == e) {
                d = c[a + 1] - 1
            }
        }
    }
    $("[id^=question_]").each(function(h) {
        if (h >= b && h <= d) {
            var j = $(this).attr("id").split("_")[1];
            var i = questionMap[j];
            if (i.showtype != "page") { //收集问题
                f.push(j)
            }
        }
    });
    return f
};